﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using BALayer;

namespace QuanLy_Truong_THPT
{
    public partial class frmXemThoiKhoaBieu : Form
    {
        DBThoiKhoaBieu dbThoiKhoaBieu = null;
        DBHocSinh dbHocSinh = null;
        DBMonHoc dbMonHoc = null;
        DBLop dbLop = null;
        DBGiaoVien dbGiaoVien = null;
        // Đối tượng hiển thị dữ liệu lên Form 
        DataTable dtThoiKhoaBieu = null;
        // Đối tượng đưa dữ liệu vào DataTable dtHocSinh 
        DataTable dtHocSinh = null;
        // Đối tượng đưa dữ liệu vào DataTable dtMonHoc 
        DataTable dtMonHoc = null;
        // Đối tượng đưa dữ liệu vào DataTable dtLop 
        DataTable dtLop = null;
        // Đối tượng đưa dữ liệu vào DataTable dtGiaoVien 
        DataTable dtGiaoVien = null;
        public frmXemThoiKhoaBieu()
        {
            InitializeComponent();
            dbThoiKhoaBieu = new DBThoiKhoaBieu();
            dbHocSinh = new DBHocSinh();
            dbMonHoc = new DBMonHoc();
            dbLop = new DBLop();
            dbGiaoVien = new DBGiaoVien();
        }
        void LoadData()
        {
            try
            {
                // Vận chuyển dữ liệu vào DataTable dtHocSinh 
                dtHocSinh = new DataTable();
                dtHocSinh.Clear();
                dtHocSinh = dbHocSinh.LayHocSinh().Tables[0];
                // Đưa dữ liệu lên ComBoBox trong DataGridView  
                (dgvTKB.Columns["HocSinh"] as
                DataGridViewComboBoxColumn).DataSource = dtHocSinh;
                (dgvTKB.Columns["HocSinh"] as
                DataGridViewComboBoxColumn).DisplayMember =
                "HoTen";
                (dgvTKB.Columns["HocSinh"] as
                DataGridViewComboBoxColumn).ValueMember = "MaHS";
                // Vận chuyển dữ liệu vào DataTable dtMonHoc
                dtMonHoc = new DataTable();
                dtMonHoc.Clear();
                dtMonHoc = dbMonHoc.LayMonHoc().Tables[0];
                // Đưa dữ liệu lên ComboBox trong DataGridView  
                (dgvTKB.Columns["MonHoc"] as
                DataGridViewComboBoxColumn).DataSource = dtMonHoc;
                (dgvTKB.Columns["MonHoc"] as
                DataGridViewComboBoxColumn).DisplayMember =
                "TenMH";
                (dgvTKB.Columns["MonHoc"] as
                DataGridViewComboBoxColumn).ValueMember = "MaMH";
                // Vận chuyển dữ liệu vào DataTable dtLop
                dtLop = new DataTable();
                dtLop.Clear();
                dtLop = dbLop.LayLop().Tables[0];
                // Đưa dữ liệu lên ComboBox trong DataGridView  
                (dgvTKB.Columns["Lop"] as
                DataGridViewComboBoxColumn).DataSource = dtLop;
                (dgvTKB.Columns["Lop"] as
                DataGridViewComboBoxColumn).DisplayMember =
                "TenLop";
                (dgvTKB.Columns["Lop"] as
                DataGridViewComboBoxColumn).ValueMember = "MaLop";
                // Vận chuyển dữ liệu vào DataTable dtGiaoVien
                dtGiaoVien = new DataTable();
                dtGiaoVien.Clear();
                dtGiaoVien = dbGiaoVien.LayGiaoVien().Tables[0];
                // Đưa dữ liệu lên ComboBox trong DataGridView  
                (dgvTKB.Columns["GiaoVien"] as
                DataGridViewComboBoxColumn).DataSource = dtGiaoVien;
                (dgvTKB.Columns["GiaoVien"] as
                DataGridViewComboBoxColumn).DisplayMember =
                "TenGV";
                (dgvTKB.Columns["GiaoVien"] as
                DataGridViewComboBoxColumn).ValueMember = "MaGV";
                // Vận chuyển dữ liệu vào DataTable dtThoiKhoaBieu 
                dtThoiKhoaBieu = new DataTable();
                dtThoiKhoaBieu.Clear();
                dtThoiKhoaBieu = dbThoiKhoaBieu.LayThoiKhoaBieu().Tables[0];
                // Đưa dữ liệu lên DataGridView  
                dgvTKB.DataSource = dtThoiKhoaBieu;
            }
            catch (SqlException)
            {
                MessageBox.Show("Không lấy được nội dung trong table Thời Khóa Biểu. Lỗi rồi!!!", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        private void btnTroVe_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void frmXemThoiKhoaBieu_Load(object sender, EventArgs e)
        {
            LoadData();
        }
    }
}
